﻿using System;
using Microsoft.Office.Interop.Excel;

namespace BrightSword.OfficeInterop
{
    public interface IExcelReadProcessorArg
    {
        Func<Workbook, object[], bool> BeforeProcessWorkbook { get; }
        Func<Worksheet, object[], bool> BeforeProcessWorksheet { get; }
        Func<Range, object[], bool> BeforeProcessRow { get; }

        Action<Workbook, object[]> ProcessWorkbook { get; }
        Action<Worksheet, object[]> ProcessWorksheet { get; }
        Action<Range, object[]> ProcessRow { get; }

        Action<Workbook, object[]> AfterProcessWorkbook { get; }
        Action<Worksheet, object[]> AfterProcessWorksheet { get; }
        Action<Range, object[]> AfterProcessRow { get; }
    }
}